        import ecitys.gcs.*
        import ecitys.types.Money
        
        
        def indice1 = new Indice(indice:'Indice-001')
        println indice1.validate()
       
        
        def data = new Date()
        def v = Money.newMoneyFromReal(100)
        def vlIndice = new ValorIndice(dataDeVigencia:data, valor:v, indice:indice1)
        println vlIndice.validate()
        

        def verba1 = new Verba(codigoDaVerba:'1', nomeDaVerba:'Salario', NaturezaDaVerba:1, baseCalculoInss:1,
                               baseCalculoIrf:1, baseCalculoFgts:1, baseCalculoRais:1, baseCalculoDsr:1,
                               baseCalculoSf:1, comprovanteRendimentosPagos:1, opcaoBaseCalculo:1,proporcional:1,
                               mesDeCalculo:0, tipoDeCalculo:0,percentual:v,valorBase:v,fatorDeDivisao:v,
                               fatorDeMultiplicacao:v,verbaConsignada:false,indice:indice1, verbaBase:null,
                               calculo:null)  
        if (verba1.validate()){
            indice1.save()
            vlIndice.save()
            verba1.save()  
            def calc = new CalculoPorIndice(indice1, verba1)
            //verba1.calculo = calc
            //println verba1.calculo.doCalculo()
            println calc.doCalculo()
        }else{
           println "verba1 no validate...printing errors"
           verba1.errors.each {
                           println it
                         }  
   

        }

                                  